#ifndef SQLCurrentOfCursorExpr_HEADER_H
#define SQLCurrentOfCursorExpr_HEADER_H


#include <string>
#include "../SQLName.h"
#include "../SQLExprImpl.h"

class SQLASTVisitor;

class SQLCurrentOfCursorExpr : virtual public SQLExprImpl
{

private:
  SQLName_ptr cursorName;

public:
  SQLCurrentOfCursorExpr();
  virtual ~SQLCurrentOfCursorExpr();

  SQLCurrentOfCursorExpr(SQLName_ptr cursorName);
  SHAREDOBJECT(SQLCurrentOfCursorExpr);

  SQLName_ptr getCursorName();

  void setCursorName(SQLName_ptr cursorName);

  void output(std::stringstream *buf);

  // int hashCode();
  // BOOL_ptr equals(Object obj);
protected:
  void accept0(SQLASTVisitor_ptr visitor);
};
// typedef boost::shared_ptr<SQLCurrentOfCursorExpr> SQLCurrentOfCursorExpr_ptr;
#endif
